Interactivity in multimedia systems has become increasingly important. The aim is
to devise ways for the machine to be an effective and active partner in a collective 
behavior constructed dynamically by many actors. 
%In its simplest form, a person (say a
%musician) signals the computer when specific previously defined processes should be
%launched or stopped. 
In complex forms of multimedia interaction the machine is always 
adapting its behavior according to the information derived from the activity of
the other partners who, in turn, adapt theirs according to the computer actions. 
%The core of interaction systems then depends on powerful and consistent concurrent agents architectures.

%Semantic interaction is concerned with systems that interact with users in a creative way by on-line learning and maintaining a model of the user's behavioral style and using that model for updating, in generative way, their narrative/presentation/interaction strategies. 
%While multimedia interaction involves many disciplines in Computer Sciences, %such as computer graphics and digital audio rendering, 

Constructing multimedia systems is thus a challenging task. 
Their core %of interaction systems then 
depends on powerful and consistent concurrent agents architectures.
%Moreover, ensuring their correctness poses a great burden to the usual test-based techniques. 
In this setting, \ntcc has much to offer. %for  multimedia interaction for two reasons. 
%First, c
Complex dynamic agent synchronization scenarios %, very difficult to implement and maintain using traditional means, 
can be modeled cleanly and compositionally based on the %natural 
synchronization mechanism provided by blocking ask constructs. 
%Furthermore, representing interactions on which little information is available can be conveniently  done by using non-determinism. 
Also, interactions on which little information is available can be conveniently 
represented using non-determinism. 
Most importantly, safety properties of the model, crucial in performance settings, can be formally proved to hold.

Quantitative information is also important in musical settings. 
In \cite{PerezR08}, %a timed concurrent constraint process calculus with probabilistic and non-deterministic choices is proposed. The calculus, called 
we proposed 
\pntcc, the first \ntcc extension featuring %both kinds of choices. From a modeling perspective, 
probabilistic and non-deterministic choices.
\pntcc\ advocates the specification of probabilistic, reactive systems within non-deterministic environments. 
%The paper \cite{perezICLP08} provides the m
The calculus is equipped with an operational semantics that ensures consistent interactions between 
%probabilistic and non-deterministic 
both kinds of 
choices. The semantics is also crucial in the definition of logic-based verification capabilities over system specifications.
We have %explored the use of 
used 
\pntcc for analyzing a scenario of interactive music improvisation (see the extended version of \cite{PerezR08}). 
Probabilitistic information was shown to be 
%We refined a purely non-deterministic model for interactive improvisation with probabilistic information. In the musical setting 
%refinement serves two main purposes. First, it %
%such a refinement 
%not only
%allows to have a 
useful to obtain a 
quantitative measure of the quality of an improvised sequence and %they second, it also enhances 
to enhance 
the control the modeler has over the whole process. 

Interactive scores \cite {allombert07} are models for reactive music systems  where weakly defined temporal relations between components specify a hierarchy of loosely coupled music processes. Although the hierarchical structure has been treated as static in previous works, there is no reason it should be so.  In \cite{Olarte-Multimedia}, we propose a model for  dynamic interactive scores where interactive points can be defined to  adapt the score depending on  the information inferred from the environment (say, a set of performers). We then broaden the interaction mechanisms available for the composer.



%In \cite{Olarte-Multimedia}, we modeled in \utcc\ a music improvisation system composed of interactive agents learning a musical style and generating on the fly new material in the same style. An efficient graph structure for learning strings, called factor oracle (FO) was implicitly constructed via constraints. %We took advantage of the expressivity of the 
%The abstraction construct of 
%\utcc was useful to cleanly define the recursive traversal of the FO graph and to model its incremental extension using a simple constraint system. 
%The %whole 
%FO learning scheme modeled in %with standard 
%\utcc primitives 
%is substantially simpler than 
%in a simple way, in contrast to 
%the \ntcc\ implementation proposed in \cite{assayag06}.
% where features outside the calculus and a dual finite domains and finite sets constraint system had to be used.

In \cite{sarria-CLEI08} we proposed \rtcc, a model of real-time concurrent constraint programming which adds to \ntcc the means for specifying and modeling real-time behavior. This calculus %is provided with a new construct 
has constructs 
for modeling strong preemption and %another one 
for defining delays within the same time unit. %Together with these new features we provided 
%We endowed \rtcc with an 
The operational semantics of \rtcc supports resources, limited time and true concurrency. 
% (CR) if space constraints (and prudence) impose it, I would be perfectly happy to eliminate this paragraph:
%The lack of monotonicity derived from the new constructs and the inclusion of resources and time in the operational semantics precludes defining the denotations of processes in terms of quiescent points as is usual in \ccp\ calculi. Thus a denotational semantics based on Chu spaces is also provided. 
% I think it's wiser to eliminate this paragraph:  (CR)
%We also introduced a real-time logic for expressing temporal specifications of \rtcc\ processes. An inference system is defined to prove that a process in the calculus satisfies a given formula in the logic. 
We showed the applicability of the \rtcc\ calculus %in music and multimedia interaction. 
%(CR) I think OM maquettes cannot be modeled in rtcc because of the lack of mobility, so let's eliminate this sentence: We formalize the notion of OpenMusic Maquette \cite{openmusic}, 
%We gave more 
by giving more faithful models %in \rtcc\ 
of various musical situations  previously modeled in other \ccp calculi.

In multimedia interaction settings the real-time execution %in real-time of the 
of models is central. %(CR) Mauricio already did all this, so I changed "we are currently" by "we have"
We have implemented %in C++ (using the Gecode constraint library) 
a first prototype of an interpreter for \ntcc\ specifications providing real-time interaction with the models developed in the calculus. The tool, called NtccRT \cite{toro09}, %(CR)not "will provide" but "allows"
also allows for the integration with %the 
music composition environments such as OpenMusic (OM, \cite{openmusic}). % and the real-time programming languages Max/Msp \cite{max} and Pd \cite{pd}. %The %purpose is to provide the means to...instead of final idea (CR)
% purpose is to 
NtccRT 
provides a means to  write a \ntcc specification graphically (using OM) and then to compile it as an standalone program interacting with Midishare \cite{midishare}. 
%It can also be used 
%compiled as a binary plugin for Pd or Max, % (CR) to improve the synchronization facilities, instead of synchronizing
% to improve the synchronization facilities of signal processing operations in %those languages. 
%Pd and Max. 
The %current version of this 
tool is available at \url{http://ntccrt.sourceforge.net}. \\

